using System;
using System.Collections.Generic;
using System.Text;

namespace Multiplicity.Reflection {
    public abstract class TypeInfo {

        public abstract FieldInfo[] GetFields();

        public abstract string Name {
            get;
        }

        public abstract string Namespace {
            get;
        }

        public string FullName {
            get {
                if (string.IsNullOrEmpty(Namespace))
                    return Name;

                return string.Concat(Namespace, ".", Name);
            }
        }

        public override string ToString() {
            return FullName;
        }
    }
}
